1. Technical Field
The invention relates to the field of call management systems and more particularly, to Internet protocol (IP) telephony based call management systems.
2. Description of the Related Art
IP telephony provides an alternative to conventional circuit switched telephony which requires the establishment of an end-to-end communication path prior to the transmission of information. In particular, IP telephony permits packetization, prioritization and simultaneous transmission of voice traffic and data without requiring the establishment of an end-to-end communication path. As a result, IP telephony can capitalize upon Voice over IP (VOIP) technologies which advantageously provide a means by which voice traffic and data can be simultaneously transmitted across IP networks.
Common applications of IP telephony can include the integration of voice mail and electronic mail (e-mail). Other applications can include voice logging by financial or emergency-response organizations. Additionally, automated call distribution and interactive voice response (IVR) systems can employ IP telephony as a workflow component. Nevertheless, call management systems, have lagged in the utilization of IP telephony. In particular, call management systems operate on real-time audio signals which cannot tolerate latencies associated with traditional data communications. As such, where call management systems are implemented using an IP telephony topology, the speech processing portions of the call management systems have been closely integrated with the IP telephony portion in order to overcome the inherent latencies of traditional data communications. In consequence, the design and development of IP telephony enabled call management systems have been closely associated with the proprietary nature of IP telephony.
The close association between speech processing and IP telephony portions of a call management system substantially limits both the design and the extensibility of the speech processing portion of the call management system. Specifically, in the present paradigm the speech processing design can incorporate functionality directly job related to the chosen protocol for transporting packetized voice data to a speech application. As a result, the development of a superior voice transport protocol, the nature of the tight linkage between the IP telephony server and the speech processing portion of the call management system can compel the redesign of the speech application.
Aside from the close association between the IP telephony and speech processing portions of call management applications, IP telephony based call management systems can provide telephony support for a single voice browser session in a voice server. Both the single voice browser implementation and the proprietary nature of such call management systems, however, can substantially limit scalability. The scalability problem can be compounded where multi-vendor applications are integrated within such call management systems. While attempts have been made to standardize IP telephony interfaces, such as the Java Telephony Application Programming Interface (JTAPI), such attempts still remain limited to providing IP telephony support through single voice browsers within single voice servers.
FIG. 1 is a schematic depiction of a call management system configured for IP telephony which illustrates the foregoing deficiencies. Specifically, the call management system 100 can include one or more telephony end-points through which individual callers can interact with individual voice servers 120, 130, 140 over the telephony network 105. The call management system 100 further can include a voice gateway 106 which can convert call request data configured for use in the telephony network to packet-based request data suitable for use in an IP-based network. In that regard, the gateway 106 can be configured to route individual calls between individual telephony end-points 102a, 102b, 102c and voice browsers 122, 132, 142 of respective voice servers 120, 130, 140.
In the conventional call management system 100, each voice server 120, 130, 140 can include a voice browser 122, 132, 142 which can moderate a caller's voice interaction with voice-configured content stored in the respective voice server 120, 130, 140. Voice content can include markup specified content which, when interpreted by a voice browser 122, 132, 142, can be audibly presented to callers using conventional text-to-speech technology. Additionally voice content can include markup which, when interpreted by a voice browser, can convert caller-provided speech into computer processable text using conventional speech recognition technology. An exemplary markup language which can be used to format voice content can include the well-known VoiceXML.
In operation, a first caller can initiate a call to a speech application using the telephony end-point 102a. The call can include a call request that can be routed through the PSTN 105 to gateway 106. The gateway 106 can route the call to port 121 of voice server 120, where the call can be processed by voice browser 122. In addition to the first call, the gateway 106 can route a second call from a second caller at telephony end-point 102b to port 131 of voice server 130, where it can be processed by voice browser 132. Finally, the gateway 106 can route yet a third call from a third caller through telephony end-point 102c to port 141 of voice server 140, where it can be processed by voice browser 142.
Significantly, if the gateway 106 receives a fourth call request from a fourth caller 102d, the call request cannot be processed without adding an additional voice browser to complement the already utilized voice browsers 122, 132, 142. In particular, each voice browser 122, 132, 142 can handle only a single call at one time because each voice browser 122, 132, 142 has but a single port 121, 131, 141 for communicating directly with voice servers 120, 130, 140, respectively. In consequence of the single port limitation, however, it can be difficult and expensive to scale the call management system 100 to handle many call requests.